1. Field of Invention
This invention relates to graphical editing systems. In particular, this invention is directed to a method and an apparatus for dynamically grouping a plurality of graphic objects for graphical editing.
2. Description of Related Art
Grouping of graphic objects is an important interface issue in graphical editing systems, such as systems operating with digital ink, as it allows selecting one or more graphic objects as a single unit. Users select graphic objects for editing operations, such as deleting or moving graphic objects, or for adding properties or data types to the graphic objects. For handwritten notes, the desired selection of graphic objects is typically groups of ink strokes forming a word, a line or a paragraph. In keyboard entry systems, selection is facilitated by the fact that the words, lines and paragraphs are well-defined units, which can be distinguished by space characters between words, paragraph characters between paragraphs and the like. In keyboard entry systems, the user may click on a mouse once to select a word, twice to select a line, or three times to select a paragraph. In contrast, graphic objects, including digital ink strokes, cannot be mapped into meaningful units in this way.
Thus, in typical graphical editing systems, groups of graphic objects are selected by dragging a rectangle over the desired objects. However, if the desired graphic objects are not basically rectangular, for example, in cases where ink strokes as graphic objects are skewed or drawn diagonally, this technique may be disadvantageous.
Another method for grouping graphic objects in graphical editing includes drawing a loop around the graphic objects to indicate the desired grouping. This method is used in Tivoli. Tivoli is described in "Tivoli: An Electronic Whiteboard for Informal Workgroup Meetings", E. Pedersen et al., INTERCHI '93, pages 391-398 (Apr. 24-29, 1993). Tivoli is an electronic whiteboard for informal work group meetings. While drawing a loop around the graphic objects can avoid skew problems, selecting just the strokes of one group is difficult to achieve when strokes from different groups overlap.
Another method for selecting groups of graphic objects or strokes is wiping, as disclosed in U.S. Pat. No. 5,548,705 to Moran et al. (Moran 1). Moran 1 describes a technique for wiping of dynamically selected graphic objects, wherein a special wiping mode is selected and the pen is moved over desired graphic objects or strokes. However, strokes or graphic objects not touched by the wipe may be included according to how close they are to selected graphic objects or strokes, either in actual distance on a page or how closely in time they were created.
In the Sharp Zaurus Model ZR-5700/ZR-5800 operation manual, Sharp Corporation, Mahwah, N.J. 07430, ink strokes as graphic objects are automatically grouped by time, so that strokes made within a certain time threshold are grouped together. However, in this technique, the threshold for grouping strokes is dependent on the writing speed. This technique also does not take into account spatial closeness. Therefore, graphic objects or strokes that are adjacent on a page, but that are made at different times, may not be grouped and it is difficult to separate time-grouped graphic objects or strokes.
In the InkWriter (Aha|) system, "aha| software products", 1995, graphic objects or strokes are written between pre-drawn lines on the screen and words are recognized based on inter-stroke spacing. This system allows a user to edit handwritten notes using insertion, deletion, cut-and-paste, with the ink or graphic objects being reformatted to fit the screen, as in text word processors.
U.S. Pat. No. 5,404,439 to Moran et al. (Moran 2) describes techniques for dynamically selecting graphic objects by considering their spatial and temporal nearness to the selection, with selection being made by rectangular regions, drawing a loop, or by wiping.